/*
 * CJoueur.cpp
 *
 *      Author: grifos
 */

#include "CJoueur.h"
#include <math.h>
#include <iostream>
#define PI 3.1415926536

CJoueur::CJoueur(float vx,float vy, float angleVue, float speed, float angleSpeed) {
	_death = false;
	_vx = vx;
	_vy = vy;
	_rx = vx;
	_ry = 0;
	_rz = vy;
	_lastPosition._v[0] = _rx;
	_lastPosition._v[0] = _ry;
	_lastPosition._v[0] = _rz;
	_angleVue = angleVue;
	_speed = speed;
	_angleSpeed = angleSpeed;
}

CJoueur::~CJoueur() {
}

void CJoueur::forward(float delta)
{
	_vx += delta*_speed*cos(_angleVue+PI/2);
	_vy += delta*_speed*sin(_angleVue+PI/2);

	_lastPosition._v[0] = _rx;
	_lastPosition._v[0] = _ry;
	_lastPosition._v[0] = _rz;

	_rx = _vx;
	_rz = _vy;
	osg::Vec3 CurrentPosition(_rx,_ry,_rz);
	_movement = (CurrentPosition-_lastPosition);
}

void CJoueur::turnRight(float delta)
{
	_angleVue += _angleSpeed*delta;
}

void CJoueur::turnLeft(float delta)
{
	_angleVue -= _angleSpeed*delta;
}
